<!-- 首页 -->
<template>
    <div class="index">
        <div class="container">
            <!-- 轮播图菜单 -->
            <div class="swiper-box">
                <div class="nav-menu">
                    <ul class="menu-wrap">
                        <li class="menu-item">
                            <a href="javascript:;">手机 电话卡</a>
                            <div class="children">
                                <ul v-for="(item, i) in menuList" :key="i">
                                    <li v-for="(sub, j) in item" :key="j">
                                        <a :href="sub ? '/#/product/' + sub.id : ' '">
                                            <img :src="sub ? sub.img : '/imgs/item-box-1.png'" alt="">
                                            {{ sub ? sub.name : '小米9' }}
                                        </a>
                                    </li>
                                </ul>
                            </div>
                        </li>
                        <li class="menu-item">
                            <a href="javascript:;">电视 盒子</a>
                            <div class="children"></div>
                        </li>
                        <li class="menu-item">
                            <a href="javascript:;">笔记本 平板</a>
                            <div class="children"></div>
                        </li>
                        <li class="menu-item">
                            <a href="javascript:;">手机 电话卡</a>
                            <div class="children"></div>
                        </li>
                        <li class="menu-item">
                            <a href="javascript:;">家电 插线板</a>
                            <div class="children"></div>
                        </li>
                        <li class="menu-item">
                            <a href="javascript:;">出行 穿戴</a>
                            <div class="children"></div>
                        </li>
                        <li class="menu-item">
                            <a href="javascript:;">智能 路由器</a>
                            <div class="children"></div>
                        </li>
                        <li class="menu-item">
                            <a href="javascript:;">电源 配件</a>
                            <div class="children"></div>
                        </li>
                        <li class="menu-item">
                            <a href="javascript:;">生活 箱包</a>
                            <div class="children"></div>
                        </li>
                    </ul>
                </div>

                <!-- 轮播图 -->
                <swiper :options="swiperOption">
                    <swiper-slide v-for="(item, index) in slideList" :key="index">
                        <a :href="'/#/product/' + item.id"><img :src="item.img" :alt="item.id"></a>
                    </swiper-slide>
                    <!-- 分页器和箭头 -->
                    <div class="swiper-pagination" slot="pagination"></div>
                    <div class="swiper-button-prev" slot="button-prev"></div>
                    <div class="swiper-button-next" slot="button-next"></div>
                </swiper>
            </div>
            <!-- 广告位 -->
            <div class="ads-box">
                <a :href="'/#/product/' + item.id" v-for="(item, index) in adsList" :key="index">
                    <img :src="item.img" alt="">
                </a>
            </div>
            <!-- banner -->
            <div class="banner">
                <a href="/#/product/30">
                    <img src="/imgs/banner-1.png" alt="">
                </a>
            </div>
            <!-- 手机商品 -->
            <div class="product-box">
                <div class="container">
                    <h2>手机</h2>
                </div>
                <div class="wrapper">
                    <div class="banner-left">
                        <a :href="'/#/product/35'"><img src="/imgs/mix-alpha.jpg" alt=""></a>
                    </div>
                    <div class="list-box">
                        <div class="list" v-for="(arr, i) in phoneList" :key="i">
                            <div class="item" v-for="(item, j) in arr" :key="j">
                                <!-- 偶数的作为新品 -->
                                <span :class="{ 'new-pro': j % 2 == 0 }">新品</span>
                                <div class="item-img">
                                    <img :src="item.mainImage" alt="">
                                </div>
                                <div class="item-info">
                                    <h3>{{ item.name }}</h3>
                                    <p>{{ item.subtitle }}</p>
                                    <p class="price" @click="addCart(item.id)">{{ item.price }}元</p>
                                </div>
                            </div>
                        </div>
                    </div>

                </div>
            </div>
        </div>
        <!-- 服务条 -->
        <service-bar></service-bar>
        <!-- 弹窗 -->
        <modal title="提示" sureText="查看购物车" btnType="1" modal-type="middle" 
        :showModal="showModal" @submit="goTocart"
            @cancel="showModal = false">
            <template v-slot:body>
                <p>商品添加成功！</p>
            </template>
        </modal>
    </div>
</template>

<script>
import ServiceBar from '@/components/ServiceBar.vue'
import Modal from './../components/Modal.vue'
import 'swiper/dist/css/swiper.css'
import { swiper, swiperSlide } from 'vue-awesome-swiper'
export default {
    name: 'nav-index',
    components: {
        ServiceBar,
        swiper,
        swiperSlide,
        Modal
    },
    data() {
        return {
            swiperOption: {
                autoplay: {
                    delay: 3000,
                    stopOnLastSlide: false,
                    disableOnInteraction: false,
                },
                loop: true,//循环
                effect: 'cube',//动画为砖块
                cubeEffect: {
                    slideShadows: true,
                    shadow: false,
                    shadowOffset: 100,
                    shadowScale: 0.6
                },
                pagination: {
                    el: '.swiper-pagination',
                    clickable: true
                },
                navigation: {
                    nextEl: '.swiper-button-next',
                    prevEl: '.swiper-button-prev',
                    clickable: true
                },
            },
            slideList: [
                {
                    id: '42',
                    img: '/imgs/slider/slide-1.jpg'
                },
                {
                    id: '45',
                    img: '/imgs/slider/slide-2.jpg'
                },
                {
                    id: '46',
                    img: '/imgs/slider/slide-3.jpg'
                },
                {
                    id: '',
                    img: '/imgs/slider/slide-4.jpg'
                },
                {
                    id: '',
                    img: '/imgs/slider/slide-5.jpg'
                }
            ],
            menuList: [
                [
                    {
                        id: 30,
                        img: '/imgs/item-box-1.png',
                        name: '小米CC9'
                    },
                    {
                        id: 31,
                        img: '/imgs/item-box-2.png',
                        name: '小米8青春版'
                    },
                    {
                        id: 32,
                        img: '/imgs/item-box-3.jpg',
                        name: 'Redmi K20 Pro'
                    },
                    {
                        id: 33,
                        img: '/imgs/item-box-4.jpg',
                        name: '移动4G专区'
                    },
                ],
                [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]
            ],
            adsList: [
                {
                    id: 33,
                    img: '/imgs/ads/ads-1.png'
                },
                {
                    id: 48,
                    img: '/imgs/ads/ads-2.jpg'
                },
                {
                    id: 45,
                    img: '/imgs/ads/ads-3.png'
                },
                {
                    id: 47,
                    img: '/imgs/ads/ads-4.jpg'
                },
            ],
            phoneList: [[1, 1, 1, 1], [1, 1, 1, 1]],
            showModal: false

        }
    },
    // 发送异步请求访问接口
    mounted() {
        this.init();
    },
    methods: {
        init() {
            this.axios.get('/products', {
                params: {
                    categoryId: 100012,
                    pageSize: 14
                }
            }).then((res) => {
                res.list = res.list.slice(6, 14);
                this.phoneList = [res.list.slice(0, 4), res.list.slice(4, 8)];
            })
        },
        addCart(id) {
            this.axios.post('/carts', {
                productId: id,
                selected: true
            }).then((res) => {
                this.showModal = true;
                this.$store.dispatch("saveCartCount", res.cartTotalQuantity);
            })
        },
        goTocart() {
            this.$router.push('cart');
        }
    }
}
</script>

<style lang="scss" scoped>
@import './../assets/scss/mixin.scss';
@import './../assets/scss/config.scss';
@import './../assets/scss/base.scss';
@import './../assets/scss/modal.scss';

.index {
    .container {
        .swiper-box {

            // 轮播图菜单
            .nav-menu {
                position: absolute;
                width: 264px;
                height: 451px;
                z-index: 9;
                // padding: 26px 0;
                /* 下面是设置透明,使用的是开发者中调试出来的透明度,
                这里不能用opacity,因为字体和箭头也会变透明 */
                background-color: #55585a8a;
                box-sizing: border-box;

                .menu-wrap {
                    .menu-item {
                        height: 50px;
                        line-height: 50px;

                        a {
                            position: relative;
                            display: block;
                            font-size: 16px;
                            color: #ffffff;
                            padding-left: 30px;

                            &:after {
                                content: " ";
                                position: absolute;
                                right: 30px;
                                top: 17.5px;
                                @include bgImg(10px, 15px, '/public/imgs/icon-arrow.png');
                            }
                        }

                        &:hover {
                            background-color: $colorA;

                            .children {
                                display: block;
                            }
                        }

                        .children {
                            display: none;
                            position: absolute;
                            width: 962px;
                            top: 0;
                            left: 264px;
                            background-color: $colorG;
                            border: 1px solid $colorH;
                            transition: all 1s; //没用

                            ul {
                                display: flex;
                                // justify-content: space-between;
                                height: 75px;

                                li {
                                    height: 75px;
                                    line-height: 75px;
                                    flex: 1;
                                    padding-left: 23px;
                                }

                                a {
                                    color: $colorB;
                                    font-size: 14px;
                                }

                                img {
                                    width: 42px;
                                    height: 35px;
                                    vertical-align: middle;
                                    margin-right: 15px;
                                }
                            }
                        }
                    }
                }
            }

            // 轮播图
            .swiper-container {
                height: 451px;

                .swiper-button-prev {
                    left: 274px;
                }

                img {
                    width: 100%;
                    height: 100%;
                }
            }
        }

        .ads-box {
            @include flex();
            margin-top: 34px;
            margin-bottom: 31px;

            a {
                width: 296px;
                height: 167px;
            }
        }

        .banner {
            margin-bottom: 50px;
        }

        .product-box {
            background-color: $colorJ;
            padding: 30px 0 50px;

            h2 {
                font-size: $fontF;
                height: 21px;
                line-height: 21px;
                color: $colorB;
                margin-bottom: 20px;
            }

            .wrapper {
                display: flex;

                .banner-left {
                    margin-right: 16px;

                    img {
                        width: 224px;
                        height: 619px;
                    }
                }

                .list-box {
                    .list {
                        @include flex();
                        width: 986px;
                        margin-bottom: 14px;

                        &:last-child {
                            margin-bottom: 0;
                        }

                        .item {
                            width: 236px;
                            height: 302px;
                            background-color: $colorG;
                            text-align: center;

                            span {}

                            .item-img {
                                img {
                                    height: 195px;
                                    width: 100%;
                                }
                            }

                            .item-info {
                                h3 {
                                    font-size: $fontJ;
                                    color: $colorB;
                                    line-height: $fontJ;
                                    font-weight: bold;
                                }

                                p {
                                    color: $colorD;
                                    line-height: 13px;
                                    margin: 6px auto 13px;
                                }

                                .price {
                                    color: #F20A0A;
                                    font-size: $fontJ;
                                    font-weight: bold;
                                    cursor: pointer;

                                    &:after {
                                        @include bgImg(22px, 22px, '/public/imgs/icon-cart-hover.png');
                                        content: ' ';
                                        margin-left: 5px;
                                        vertical-align: middle;
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }


    }
}
</style>